# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

Extension_Name := Click\ Modifiers
Extension_ID := Click_Modifiers@JeremyZerfas.com
Extension_Version := v1.0.1

# The Firefox profile folder to install to.
Firefox_Profile_Name := Development\ Profile

# The files that should be added to the created extension file (XPI).
Extension_Files :=	bootstrap.js \
					chrome.manifest \
					Click_Modifiers_Icon_48x48.png \
					Click_Modifiers_Icon_64x64.png \
					install.rdf \
					License \
					$(wildcard locale/*/*.dtd) \
					Options.xul \
					Options_Mac.xul \
					Options_Windows.xul

# The files that should be added to the created source distribution file (ZIP).
Source_Files :=	$(Extension_File_Name) \
				$(Extension_Files) \
				Change\ Log \
				Click\ Modifiers\ Icon.svg \
				Makefile



Extension_File_Name := $(Extension_Name)\ $(Extension_Version).xpi
Source_Distribution_File_Name := $(Extension_Name)\ $(Extension_Version)\ Source.zip

OS := $(shell uname)
ifeq ($(OS), Darwin)
	Firefox_Profile_Path := ~/Library/Application\ Support/Firefox/Profiles/$(Firefox_Profile_Name)/
	Firefox_Extensions_Path := $(Firefox_Profile_Path)extensions/
endif
ifeq ($(OS), Windows)
	Firefox_Profile_Path := $(subst \,\\,$(APPDATA))\\Mozilla\\Firefox\\Profiles\\$(Firefox_Profile_Name)\\
	Firefox_Extensions_Path := $(Firefox_Profile_Path)extensions\\
endif
ifeq ($(OS), FreeBSD)
	Firefox_Profile_Path := ~/.mozilla/firefox/$(Firefox_Profile_Name)/
	Firefox_Extensions_Path := $(Firefox_Profile_Path)extensions/
endif
ifeq ($(OS), Linux)
	Firefox_Profile_Path := ~/.mozilla/firefox/$(Firefox_Profile_Name)/
	Firefox_Extensions_Path := $(Firefox_Profile_Path)extensions/
endif



.PHONY: all
all: $(Extension_File_Name) $(Source_Distribution_File_Name)


.PHONY: clean
clean:
	@rm -f $(Extension_File_Name) $(Source_Distribution_File_Name)


.PHONY: install
install: $(Extension_File_Name)
	@echo "Installing in Firefox extensions folder: $(Firefox_Extensions_Path)..."
	@mkdir -p $(Firefox_Extensions_Path)
	@cp $(Extension_File_Name) $(Firefox_Extensions_Path)$(Extension_ID).xpi
	@echo "Finished installing in Firefox extensions folder."


.PHONY: run
run: install
	@echo "Starting Firefox..."
    ifeq ($(OS), Darwin)
		@arch -i386 /Applications/Firefox.app/Contents/MacOS/firefox -Profile $(Firefox_Profile_Path)
    endif



$(Extension_File_Name): $(Extension_Files)
	@echo "Creating extension file (XPI)..."
	@rm -f $(Extension_File_Name)
	@zip $(Extension_File_Name) $(Extension_Files)
	@echo "Finished creating extension file (XPI)."


$(Source_Distribution_File_Name): $(Source_Files) $(Extension_File_Name)
	@echo "Creating extension source distribution file (ZIP)..."
	@rm -f $(Source_Distribution_File_Name)
	@zip $(Source_Distribution_File_Name) $(Source_Files)
	@echo "Finished creating extension source distribution file (ZIP)."